Computing devices are commonly utilized by users to communicate almost instantaneously with one or more contacts. Such information exchange can occur by a user entering information (e.g., text, visual, audio, and so on) into a display area of a user device and communicating with the one or more contacts in a back-and-forth manner without using a telephone or other method of communication. This almost instantaneous communication allows a user and various contacts in disparate locations to communicate in a real time fashion.
In various situations, a user may wish to monitor the presence and availability of various contacts (through respective computing devices). However, some users may utilize multiple devices (e.g., desktop, web client, mobile client, and the like), which can make it difficult to determine the device that the user is currently operating and the device to which communication should be sent. Some of the devices in use might not have a platform support, which an application can leverage in order to determine the user's activity of the device. If the user is not active on a particular device and communications are being sent to that device, the user may miss important communications because such user might be utilizing a different device.
Therefore, what is needed is discovery of whether a user of a particular device is actively using the device and if so, communications are sent to that device. Such discovery can mitigate the occurrence of a user receiving a communication (e.g., real-time message) at a device which the user is not currently utilizing and potentially miss an important communication.